﻿using Xiety.DtoGenerator;

public class Nodes : DtoData
{
	public void Run()
	{
		Namespace("Xiety.GenerationSample");

		Class("TableNode", "QueryNode")
			.Property("string", "TableName");

		Class("OnNode")
			.ListProperty("ExpressionNode", "Expressions");

		Class("QueryNode", abstr: true)
			.Property("QueryNode", "Query")
			.Property("String", "Alias");

		Class("ExpressionNode")
			.Property("string", "Content");

		Class("JoinNode", "QueryNode")
			.Property("OnNode", "On")
			.Property("QueryNode", "Left")
			.Property("QueryNode", "Right");

		Class("FilterNode", "QueryNode")
			.Property("WhereNode", "Where");

		Class("WhereNode")
			.ListProperty("ExpressionNode", "Expressions");
	}
}
